内存攻击已经成为一个严重的问题,受害者的数量正在快速增加。在您的系统中找出黑客的存在是很困难的,因为黑客永远不会在磁盘上写入文件,这是一种通常的黑客攻击方式。他们使用内存代替,在操作系统的事件日志中留下很少或没有足迹。仅当黑客选择磁盘上的恶意文件时,防病毒软件的好处才有效,但在内存中的情况下,它们没有表现出积极的反应。强烈建议使用 Sysmon 和 Azure 安全中心来解决这个问题。以下是在 Sysmon 的帮助下检测系统中是否存在恶意实体的两种有价值的方法。
在寻找解决方案之前,用户应该了解黑客的策略。该图描绘了黑客用来破坏您的安全墙的最常用方法。
进程注入
黑客通过电子邮件发送 Microsoft Office Word 文档,要求受害者启用宏,然后将恶意代码直接注入 verclsid.exe 进程空间。Verclsid.exe 是一个受信任的 Window 进程,有必要尽早停止入侵活动。
过程干扰
一旦攻击者进入受害者的机器,他就会采取一些措施向受害者隐藏自己的存在。这里我们以 Invoke-Phantom 为例,它使用进程间的 Windows API 调用帮助用户找出与 Windows 事件日志服务相关的线程。完成此过程后,黑客可以轻松地隐藏他在系统中的存在,并且他的活动不会被记录。
如何使用 Sysmon 和 Azure 安全服务检测内存攻击?
用户可以通过收集和分析 Sysmon 事件轻松检测上述攻击。这是一个需要遵循的三个步骤:
安装和配置 Sysmon
上述攻击技术访问一个进程的内存并复制到另一个进程。verclsid.exe 和 svchost.exe 中正在修改内存。Sysmon 可以在您下载并安装后检测到此类攻击,因为它决定了日志记录的级别和数量。使用以下代码进行配置:
示例SysmonConfig.xml:
verclsid.exe
svchost.exe
0x1F0FFF
0x1F1FFF
0x1F2FFF
0x1F3FFF
…
0x1FFFFF
未知
您可以使用此代码执行安装。sysmon.exe -i 示例SysmonConfig.xml。或者,如果您使用 64 位版本 sysmon64.exe -i exampleSysmonConfig.xml,则使用此代码作为替代。
启用 Sysmon 数据收集
Azure 安全中心密切关注恶意活动并记录特定的事件集。您可以从 Azure 门户查看数据。从 Log Analytics 工作区中选择高级设置,然后转到 Log Analytics 中的数据源,该数据源用于获取多种类型数据的详细信息以进行分析。添加以下代码以收集 Sysmon 事件:Microsoft-Windows-Sysmon/Operational:
定义自定义警报
您可以从警报详细信息中获取客户警报和新警报,并从 ProcessAccess 中获取数据定义。使用以下查询获取每个警报的完整信息。搜索“Microsoft-Windows-Sysmon/Operational” | 其中 EventID==10 。同样,您可以在安全中心查看警报并采取必要的措施。